#[macro_export]
macro_rules! c_str {
    ($literal:expr) => {
        std::ffi::CStr::from_bytes_with_nul_unchecked(concat!($literal, "\0").as_bytes())
    };
}

#[macro_export]
macro_rules! offset_of {
    ($t:ty, $f:ident) => {
        &(*(ptr::null() as *const $t)).$f as *const _ as usize
    };
}
